package com.baidu.springcloud.config;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

/**
 * @author ShiLei
 * @version v1.0
 * @date 2020-03-11 15:15
 * rest风格的远程调用
 * RestTemplate 封装了http的远程调用可以之间进行两个模块间的互相调用
 */
@Configuration
public class ApplicationContextConfig {

    /**
     * LoadBalanced 表示开启RestTemplate 的负载均衡机制
     *
     * @return 返回远程调用对象
     */
    @Bean
//    @LoadBalanced 使用自定义的负载均衡不需要此注解 / 该注解是使用ribbon负载均衡时候添加负载均衡算法
    public RestTemplate getRestTemplate() {
        return new RestTemplate();
    }
}
